06. App Store Preparation

App Store Preparations

Preparing for the App Stores

When you submit an app to either app store, there is more information you need to submit than just the app itself. For example, you need details such as the app description, icon, etc. Luckily for us, Expo make it easy to specify these sorts of things just by editing the app.json file at the root of our app folder. Here's an example of configurations we'll be adding in our UdaciFitness app:

{
  "expo": {
    "sdkVersion": "19.0.0",
    "orientation": "portrait",
    "name": "Udacifitness",
    "description": "The best triathlon training app in the world.",
    "slug": "udacifitness",
    "version": "1.0",
    "icon": "https://maxcdn.icons8.com/Color/PNG/512/Sports/triathlon-512.png",
    "notification": {
      "icon": "http://www.student-scholarships.com/images/made/img/featured/nav_basketball_45_45.png"
    },
    "ios": {
     "bundleIdentifier": "org.udacifitness.exp",
    },
    "android": {
     "package": "org.udacifitness.exp",
    }
  },
}

Let's go ahead and add this to our app!

App-Prep

Task Description:

This is the final check-in!

Task List:

Task Feedback:

Fantastic!

Which file do you need to change in order to configure your application for the app store?

SOLUTION:
  • app.json

What are .apk and .ipa Files?

Before you submit your application to either app store, you need to "package" it appropriately. The iOS App Store will ask you for a .ipa ("iOS App Store Package") file and the Android Google Play store will ask you for a .apk ("Android Application Package") file. When you create either an ipa or a apk file, you're essentially creating a bundle of all of the necessary information that either App store needs in order to process and run your application.

The easiest way to generate both the .apk and the .ipa files is to use Expo's exp CLI. First, run npm install -g exp. Once that's installed (and after you've configured your app.json file), you can run exp build:ios to build your .ipa file, and exp build:android to build your .apk file.

Note that these will take anywhere from 10-20 minutes to build, so you'll need to be patient. To check the status of the build you can run exp build:status. Eventually that command will give you a URL where you can go to download either your .ipa or .apk files.

Generating .apk and .ipa Files

⚠️ The Rest of the Way ⚠️

The hardest part about uploading your application to either app store is generating a .ipa or .apk file. Because we covered that in the previous section, we're not going to cover the entire process of actually uploading your app. The following documents should help you: for iOS, Uploading a Build for an App and for Android, Upload an App.

Summary

In this section we learned about preparing your application for the app store and generating .apk and .ipa files. For further reading, feel free t ocheck out Building Standalone Apps with Expo